System and method for content protection in a content delivery network

ABSTRACT

An embodiment of an apparatus to authenticate a sequence of video frames includes a process to choose intra-frames of the sequence and sample DC components thereof to produce a set of test fingerprints. To reduce a dimensionality of the test fingerprints, the DC components of the chosen intra-frames are multiplied by a projection matrix formed of eigenvectors associated with the larger eigenvalues of a covariance matrix for a library of frames. The projected test fingerprints are compared against a reference set of fingerprints for authentication. Time-stamp spacings of the chosen intra-frames are determined, and these spacings are employed to select candidate frames for authentication in the reference set of fingerprints.

This application claims the benefit of U.S. Provisional Application No.61/432,985, filed on Jan. 14, 2011, entitled “Real-Time CompressesDomain Video Fingerprinting and Authentication for Content Protection inCDN”, the entire contents of which are incorporated herein by reference.

TECHNICAL FIELD

The present invention relates generally to systems, apparatuses andmethods in a digital rights management system; and more particularly,example embodiments described herein provide for content protection in acontent delivery network.

BACKGROUND

With the spread of personal computing devices and the advent of digitalmedia, there is increased concern of copyright owners to limit thedistribution of copyrighted materials. The use of digital media allowsusers to easily share and distribute the copyrighted materials, such asmusic, movies, and the like. As users distribute the digital media, thecopyright owners lose income from sales and/or licenses.

In an attempt to limit the distribution, access control technologies,e.g., digital rights management (“DRM”), have evolved. Access controltechnologies attempt to limit the distribution or the use of thecopyrighted materials to only those individuals who have apurchased/licensed the materials and therefore have a right to use thematerials (e.g., play the music or movie).

One attempt to limit use and/or distribution includes a keyauthentication approach. Generally, a key authentication approach limitsthe use of copyrighted materials to only those machines that possess aproper decryption key. The key authentication approach, however, isvulnerable to an attack on the key.

Another approach is the use of digital watermarks. Digital watermarksare digital signatures that are added to the media during production ordistribution. Digital watermarks, like the key authentication approach,are not robust and may be rendered useless.

SUMMARY OF THE INVENTION

The above-identified deficiencies and drawback of current digital rightsmanagement mechanisms are overcome through example embodiments of thepresent invention. For example, embodiments described herein provide forsystems, methods, apparatuses and computer program products thatauthenticate a sequence of frames using a sampled fingerprints thereof,as described in greater detail below. Note that this Summary is providedto introduce a selection of concepts in a simplified form that arefurther described below in the Detailed Description. This Summary is notintended to identify key features or essential features of the claimedsubject matter, nor is it intended to be used as an aid in determiningthe scope of the claimed subject matter.

One example embodiment authenticates a sequence of frames by samplingfingerprints of corresponding intra-frames representative of thesequence. If the sampled representative fingerprints match a storedprofile, a user is allowed access to at least the authenticatedsequence. Otherwise, access is denied.

Another example embodiment provides for apparatuses, systems, andcomputer program products, which are configured to implement a method ofauthenticating a sequence of digital picture frames comprising choosingone or more intra-frames of a specified sequence of frames. The methodfurther includes sampling one or more zero-frequency (“DC”) componentsof the chosen one or more intra-frames to produce a set of one or moretest fingerprints. The method can then compare the set of one or moretest fingerprints against a reference set of fingerprintscorrespondingly produced to authenticate the specified sequence offrames.

Additional features and advantages of the invention will be set forth inthe description which follows, and in part will be obvious from thedescription, or may be learned by the practice of the invention. Thefeatures and advantages of the invention may be realized and obtained bymeans of the instruments and combinations particularly pointed out inthe appended claims. These and other features of the present inventionwill become more fully apparent from the following description andappended claims, or may be learned by the practice of the invention asset forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantageous features of the invention can be obtained, a moreparticular description of the invention briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understand that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered to be limiting of its scope. For a more completeunderstanding of the present invention, and the advantages thereof,reference herein is made to the following descriptions taken inconjunction with the use of the accompanying drawings, in which:

FIG. 1 illustrates an example of a fingerprint authentication system inaccordance with example embodiments described herein;

FIG. 2 illustrates an example of a real-time video fingerprintingprocess in accordance with example embodiments described herein;

FIG. 3 illustrates a graphical representation of an example of aprojection matrix in accordance with example embodiments describedherein;

FIG. 4 illustrates a system architecture of a fingerprint authenticationsystem in accordance with example embodiments described herein;

FIG. 5 illustrates a process for performing content authentication inaccordance with example embodiments described herein;

FIG. 6 illustrates a flow diagram of a method to authenticate a sequenceof frames in accordance with example embodiments described herein; and

FIG. 7 illustrates a block diagram of various types of components in ageneralized computing network environment that may be used to implementvarious embodiments described herein.

Please note, corresponding numerals and symbols in the different figuresgenerally refer to corresponding parts unless otherwise indicated, andmay not necessarily be described again in the interest of brevity.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

The making and using of the presently preferred embodiments arediscussed in detail below. It should be appreciated, however, that thepresent invention provides many applicable inventive concepts that canbe embodied in a wide variety of specific contexts. The specificembodiments discussed are merely illustrative of specific ways to makeand use the invention, and do not limit the scope of the invention.

As introduced herein, example embodiments provide for real-time videocontent fingerprinting and authentication, which can be used for suchthings as on-demand content protection and access control. In otherwords, example embodiments described herein provide for robust contentprotection with low computational cost and are flexible in a serviceconfiguration.

More specifically, one example embodiment provides fingerprint-basedvideo content protection as a solution for access control. In suchembodiment, a compressed domain processing may be employed for real-timefingerprinting of video content to produce on-demand subscription-basedfingerprint verification.

As can be appreciated, this mechanism for video content protectionprovides fine granular content protection and access control down to asub-minute segment level of a video or a small segment level of othermaterial. The result is more robust content protection compared with keyauthentication or a watermark-based solution. Further, this exampleembodiment of resulting fingerprinting technique is highly resistant totampering and corruption. As such, content can be easily fingerprintedat high efficiency by employing compressed domain processing.Furthermore, verification becomes highly efficient in computation and iseasily adaptable to paralleled computation in cloud or clustercomputing.

As can be appreciated, content protection is of utmost concern forcontent providers and content delivery network (“CDN”) operators.Considering the huge amount of content that is available (e.g., COMCAST®offers more than 1.5 million titles, and Netflix® offers more than athousand new titles every week), and the number of subscribers (e.g.,COMCAST has 28 million subscribers), making the authentication systemrobust and operable in real time are key challenges.

As introduced herein, a highly efficient, compressed-domain videofingerprinting technology and a scalable fingerprint indexing and arobust matching scheme at an authentication server are described toaddress the aforementioned challenges. For example, in a typical contentconsumption scenario, video is downloaded from a CDN to various end-userdevices. Real-time, compressed-domain video fingerprinting may beimplemented at the playback terminal or at an edge server inside theCDN. More details on this fast fingerprint technology are explainedlater hereinbelow. Based on needs related to a user profile or contentprovider/CDN operator, a fingerprint authentication session can beinvoked on demand, and light-weight fingerprints communicated back to afingerprint authentication server. The fingerprint authentication serverchecks the fingerprints against an authentication database (“DB”) thatholds information on what content is authorized for which user.

In accordance with an example embodiment, real-time, compressed-domainvideo fingerprinting may be achieved by a logical computing processor,running either at the terminal or at a streaming and storage server inthe CDN. For example, a logical computing processor may interceptcontent traffic and implement compressed domain fingerprinting inaccordance with example embodiments described herein. For instance, avideo stream may be parsed and each group of pictures (“GoP”) headerlocated, for example, by searching for a certain bit pattern. Dependingon the temporal granularity that is used, the intra-frame (herein alsoreferenced as an I-frame) header of one or more video frames may then belocated and the DC components(e.g., the zero-frequency components ofpixel blocks—e.g., 8×8 pixel blocks—, which can be produced by a FastFourier Transform or a Direct Cosine Transform) may be sampled from avideo frame k to produce a vector x_(k) of the sampled DC components. Inone example embodiment, higher order frequency components are notsampled. Of course, other mechanisms for down sampling (e.g., random,ordered, etc.) are also contemplated herein.

Thereafter, the vectors x_(k) may be assembled to form a matrix X. Thisprovides 64 times down-scaling. I-frames are generally coded withoutreference to another frame in a frame sequence. Further scaling may beemployed for normalization across a different video format, e.g., CommonIntermediate Format (“CIF”), D1 video format (a video format initiatedby Sony and Bosch) or high definition video format (“HD”), to producethe vector x_(k) of the sampled DC components in R^(wxh) (i.e., thespace of real numbers of size width w times height h) for the frame k ina certain video sequence, where the normalized icon image size is anumber that is width w times height h of pixels.

In the above noted case, the computational cost may be reduced becauseonly the DC components are recovered from the bit stream, which aregenerally already available in a compressed data stream. Accordingly,the computational cost is approximately 1/20 to 1/100 or less than thatof full decoding of the sequence based on previous experience withMPEG-2-encoded systems.

In other words, example embodiments provide that the video fingerprintcan be generated by sampling a set of chosen I-frames in the sequence,such as a set of randomly chosen I-frames, and collecting DC icon imagesthat are further scaled down to a desired icon image dimension, i.e.,the dimension of the vectors x_(k) of the sampled DC components is thusreduced, and projected onto a subspace of a desired dimension d:x=A·fIn the equation above, x is an m x d icon image matrix, with m rows oficon image vectors x_(k) of dimensionally scaled size D, which is awidth times a height. An exemplary value of d is 16 and an exemplaryvalue of D is 192. The integer m represents the number of frames that isexamined in the fingerprinting process. An example value of m is 16.Generally, a larger value of m for the number of frames examined givesbetter accuracy but incurs more computation. The choice of a sample timestamp (as described further hereinbelow) such as produced by randomsampling and the number m of frames also affects authenticationaccuracy.

The matrix A is a pre-trained subspace model matrix of size D x d thatcan offer maximum or a high level of information preserving projectionfor icon images in the desired d-dimensional space. This produces acompact fingerprint representation at 2d bytes per second for 30 framesper second (“fps”) and a 15-frame GoP structure. For the example valueof d=16, this results in only 32 bytes/sec.

The pre-trained matrix A can be a fixed matrix that can be used for awide range of videos. To produce a pre-trained matrix A, a covariancematrix, which is a symmetric positive-semidefinite matrix of realnumbers, is constructed for a reasonably broad and representative set,i.e., a library, of vectors x_(k) of sampled DC components. Theeigenvectors of the covariance matrix are determined and sortedaccording to their eigenvalues, from largest to smallest eigenvalue. Theeigenvectors associated with the larger eigenvalues, for example thelargest 16 eigenvalues, are retained to produce the columns of thematrix A.

In one embodiment, fingerprinting is implemented with the parametersD=16×12=192 and d=16. An exemplary pre-trained subspace model projectionmatrix A is illustrated in FIG. 2.

Accordingly, a video fingerprint is obtained by compressed domain,light-weight computing as m vectors of dimension d. The m vectors aresent to an authentication server for authentication.

To provide video fingerprint-based content authorization in a CDN cloud,an authorized content fingerprint data base (a subscription DB) is builtat content injection time per a subscription plan. This offers finegranular content access control down to an individual title and chapter,or even finer. The CDN can choose to verify the content authorization ata second, lower level by issuing a command to a set-top box or mailexchanger (“MX”) to extract a fingerprint and send it back to afingerprint verification server for verification of contentauthorization. The system returns a yes or no response for thefingerprint with respect to the authorized content data set.

Authorization can involve an off-line authorized content indexing/searchscheme. For this, a k-dimensional tree- (“k-d tree”) based solution thatcan be very efficient for a search is developed. Basically, the CDNoperator extracts a video fingerprint at the time of obtaining contentfrom a content provider, and builds an indexed structure containingframe fingerprints in a video repository. In an embodiment, 100 hours ofnew content can be indexed in less than 2 minutes, and the computationalcost of fingerprinting can be pegged to the content injection part.Overall computational cost is accordingly very low.

At the time of content authorization verification, a scalable solutionfor a fingerprint verification scheme can be used. An initial set of mtest fingerprints for a stream of data such as a video stream isobtained from the client, for example a test set {x₁, x₂, . . . ,x_(m)}. Each fingerprint x_(k) in the test set is searched against anindexed set of fingerprints X1 to return a set of nearest neighbors NN1.The nearest-neighbor set of fingerprints NN1 obtained from X1 is checkedagainst a nearest neighbor set of fingerprints NN2 obtained from anindexed set X2 of fingerprints of authorized content. In an embodiment,only those nearest neighbors in NN2 having a time stamp consistent withrespect to those in NN1 are examined and kept. The rest are pruned. Theprocess is repeated until it is determined that a test fingerprintexists in the authorized data set, or that it does not exist and is notauthorized. An authorization report can then be issued.

The algorithm can be performed in parallel if a cluster computer orcloud computing system is utilized. Basically there is no datadependency in write back, and the request can be easily handed off tocomputing resources in a cluster of processors or in a cloud.

In initial simulations, the fingerprint authentication system such asdescribed herein demonstrates very good accuracy. Typically 98⁺%precision is achieved on 100% recall, i.e., all copyright violations arecaught, and only 2% are erroneously detected, which 2% can be submittedagain. Response time is within 0.01 second for a protection subscriptiondata set spanning a range of 1000 hours.

Turning now to FIG. 1, which illustrates an architecture of afingerprint authentication system in accordance with an exampleembodiment. As shown, a content data network (CDN) 100 providesrequested content such as video through a content pipe, such as a wiredor wireless Internet access connection, to end users, 101, 102, and 103.The exemplary end-users 101, 102, and 103 illustrated in FIG. 1 are,respectively, a smart phone, a personal computer, and a notebookcomputer. The content pipe from the CDN is illustrated in FIG. 1 witharrows. A processor in the CDN transmits fingerprints of requestedcontent to a fingerprint verification server/processor located, e.g., ina cloud server. The fingerprint verification server/processor verifiesfingerprints of the requested content with a subscription/authenticationdatabase (“subscription DB”), which includes information on what contentis authorized for which user. If the subscription/authorization databaseauthenticates the fingerprint, the fingerprint verification serverallows requested content to continue to flow to the end user. On theother hand, if the fingerprint is not authenticated, an authorizationviolation report is produced, which generally results in interruption ofthe requested content for the respective user.

Turning now to FIG. 2, a real-time video fingerprinting process ormethod is illustrated in accordance with an example embodiment. Asshown, a number m of I-frame images 210, 211, . . . , 21 m of a video205 are selected, for example, at random, by a processor to providecompressed domain fingerprinting. The intra-frame images 210, 211, . . ., 21 m, which may contain 800×600 pixels, are generally encoded in pixelblocks, such as in 100×75=7500 blocks of 8×8 pixels each. The encodingproduces a DC term, i.e., a zero-frequency term, which typicallyrepresents an average luminance for each 8×8 block. The collection ofthese DC terms forms “DC images,” 120, 121, . . . , 12 m of generallysize 100×75=7500 pixels. The DC images may be scaled down by a processorin block 230 to reduce their dimensionality. For example, the DC images220, 221, . . . , 22 m are scaled down from 7500 pixels to a pixelresolution of 12×16=192 pixels. The scaled-down DC images appear to be acoarse-grained black-and-white picture to the human eye. The originalunscaled DC images are generally scaled to a higher pixel resolutionthat can be of unnecessarily high dimension to produce a reliablefingerprint.

The m scaled-down dc images produced in block 230 are multiplied by theprojection matrix “A” to produce a matrix X of fingerprint vectors x₁,x₂, . . . , x_(m), e.g., of 16 components each, for the I-frame images210, 211, . . . , 21 m.

Turning now to FIG. 3, illustrated is an example graphicalrepresentation 300 of the projection matrix A in accordance with anexample embodiment. The axis d represents an index for the m sampledframes. The axis D represents an index for training bases axes for thevectors of the 12×16=192 pixels, which are principal axes derived fromthe eigenvalue/eigenvector process for a covariance matrix describedpreviously hereinabove.

Turning now to FIG. 4, illustrated is an example architecture of afingerprint authentication system for verification of a frame sequence(such as a sequence of frames in a video) against the repository, inaccordance with another example embodiment. Block 410 illustrates aprocess executed by a processor for comparing the set of testfingerprints representing chosen I-frames 210, 211, . . . , 21 m againsta reference set of fingerprint to authenticate these frames. Spacingst₁, t₂, . . . , t_(n-1) of the chosen I-frames such as or derived fromtime stamps are used to identify members of the reference set offingerprints having spacings or timestamps that match spacings of timestamps of the set of test fingerprints. Only fingerprint pairs with amatching time stamp difference are retained. Employing spacings or timestamps substantially reduces the number of fingerprints in the referenceset of fingerprints that need to be examined for a fingerprint match.

Each individual fingerprint pulled from a query clip, x₁, x2, . . . ,x_(m), may be employed with an epsilon nearest-neighbor search 410performed by a processor to retrieve candidate nearest-neighbor sets S₁,S₂, . . . S_(m), (420, 421, . . . , 42 m) which are typically hundredsof video frames in a copyright repository, and which are sequentiallytested and pruned to enforce a time-stamp difference betweenfingerprints. Thus, nearest-neighbor sets S₂, S₃, . . . , S_(m) offingerprints are iteratively pruned (in block 440) to eliminate thosethat do not fit time-stamp differences until there is only one or nofingerprint left in S_(m). Then a declaration can be made for a set 450whether a violation has been found or not.

An “epsilon” search is a search that looks for matches of a test pointS(x) to a data point x with an accuracy better than a given thresholdepsilon. All neighbors S(x) of a data point x are found for which adistance d(x,S(x)) is less than a threshold epsilon. Accordingly, an“epsilon” search doesn't require precise fingerprint matches.

FIG. 5 illustrates an example process of performing contentauthentication employing a fingerprint authentication system inaccordance with yet another example embodiment. The process illustratedin FIG. 5 can be performed by processors in a cloud, cluster or othertype of generalized networking environment and can be summarized in afew generalized steps or acts. First, real-time fingerprinting isperformed, as illustrated by fingerprint-producing processes 510, 520,530, that can include working in a compressed domain, recovering DCinformation from a video stream with partial decoding, and generating acompact fingerprint by scaling and projecting DC images. Second,subscription content repository indexing may be performed, which caninclude per subscription plan, building a content repository fingerprintand index at content injection to CDN, and can be implemented in a cloudor cluster. Then, on-demand fingerprint verification can be performed,which, if there is a suspected content authorization violation, caninclude pulling a fingerprint from a client or edge server, verifyingthe fingerprint against a subscription DB, and reporting a violation iffingerprint authentication fails, which provides fine granular,on-demand content protection.

Turning now to FIG. 6, illustrated is an example flow chart of a methodfor authenticating a sequence of frames against a reference set offrames, according to the principles of an example embodiment. The methodfunctionally begins in a step or module 610. In step or module 620,intra-frames of the sequence of frames are chosen. In step or module630, zero-frequency components of the chosen intra-frames are sampled toproduce a set of fingerprints for the chosen intra-frames. In oneparticular embodiment, only the zero-frequency components of the chosenintra-frames are sampled to produce a set of fingerprints for the chosenintra-frames. In step or module 640, spacings of the chosen intra-framesare determined. In step or module 650, the spacings are employed toselect candidate frames in the reference set of frames. In step ormodule 660, a set of nearest-neighbor fingerprints are identified amongthe selected candidate frames in the reference set of frames. In step ormodule 670, the identified set of nearest-neighbor fingerprints arecompared to the set of fingerprints of the chosen intra-frames toauthenticate the sequence of frames against the reference set of frames.The method functionally ends in step or module 680.

The steps or modules illustrated in FIG. 6 can be implemented on one ormore processors to authenticate a sequence of frames against a referenceset of frames.

Embodiments such as those presented herein provide apparatuses, systems.and methods for content authentication. For example, embodiments such asthose disclosed herein can provide a fingerprint-based contentauthentication and protection architecture that is computationallyefficient and that offers fine granular content access control down to alevel of a quarter-minute segment. Furthermore, compressed domain fastfingerprinting technique that offers real-time performance and acluster/cloud friendly architecture delivering scalable high performancefingerprint authentication on large scale can be provided by anembodiment. The resulting system and method can provide robustperformance and be resistant to attack, as it is content based.

Benefits of embodiments introduced herein include robust contentprotection. Compared with a key authentication and watermark-basedsolution, embodiments using a video fingerprinting technique such asdisclosed herein can be highly resistant to tampering and corruption.

Simple system architecture can be provided that provides on-demand,real-time, and flexible protection. Content can be easily fingerprintedat high efficiency due to compressed domain processing and verificationis highly efficient in computation, and easy to implement and scalablewith parallelized cloud/cluster computing.

Finer granularity in content protection can be provided. An embodimentcan be made to work on-demand, with protection down to a quarter-minutecontent segment scale or better.

Embodiments such as disclosed herein can provide advantages over othertypes of protection, such as key-authentication-based approaches, whichare vulnerable to attack on the key, while a fingerprint based approachis content based, with no need to have a key. Digital watermark-basedapproaches pre-insert a watermark into the content and can causeartifacts.

It is noted that, unless indicated otherwise, all functions describedherein can be performed in either hardware or software, or somecombination thereof, with or without human intervention. In anembodiment, the functions are performed by a processor such as acomputer or an electronic data processor, such as that discussed belowwith reference to FIG. 7, in accordance with code such as computerprogram code, software, and/or integrated circuits that are coded toperform such functions, unless indicated otherwise.

Referring now to FIG. 7, illustrated is a block diagram of elements of aprocessing system that may be used to perform one or more of theprocesses discussed hereinabove. The processing system may comprise aprocessor 710 equipped with one or more input/output devices, such as amouse, a keyboard, printer, or the like, and a display. The processor710 may include one or more central processing units (CPUs), memory, amass storage device, a video adapter, a network interface, and an I/Ointerface connected to a bus 720. A plurality of processors may beemployed to perform the processes discussed hereinabove.

The bus 720 may be one or more of any type of several bus architecturesincluding a memory bus or memory controller, a peripheral bus, videobus, or the like. The CPU may comprise any type of electronic dataprocessor. The memory may comprise any type of system memory such asstatic random access memory (SRAM), dynamic random access memory (DRAM),synchronous DRAM (SDRAM), read-only memory (ROM), a combination thereof,or the like. In an embodiment, the memory may include ROM for use atboot-up, and DRAM for data storage for use while executing programs.

The mass storage device may comprise any type of storage deviceconfigured to store data, programs, and other information and to makethe data, programs, and other information accessible via the bus. Themass storage device may comprise, for example, one or more of a harddisk drive, a magnetic disk drive, an optical disk drive, or the like.

The video adapter and the I/O interface provide interfaces to coupleexternal input and output devices to the processor. Examples of inputand output devices include the display coupled to the video adapter andthe mouse/keyboard/printer coupled to the I/O interface. Other devicesmay be coupled to the processor, and additional or fewer interface cardsmay be utilized. For example, a serial interface card (not shown) may beused to provide a serial interface for a printer.

The processor also preferably includes a network interface, which may bea wired link, such as an Ethernet cable or the like, and/or a wirelesslink to enable communication with a network such as a cellularcommunication network. The network interface allows the processor tocommunicate with remote units, such as units in a cloud or elsewhere,via the network. In an embodiment, the processor is coupled to alocal-area network or a wide-area network to provide communications toremote devices, such as other processors, the Internet, remote storagefacilities, or the like.

It should be noted that the processing system may not include all of thecomponents, or may include other components. For example, the processingsystem may include power supplies, cables, a motherboard, removablestorage media, cases, and the like. These other components, although notshown, are considered part of the processing system.

Embodiments such as those presented herein provide an apparatus toauthenticate a sequence of frames. An embodiment includes a firstprocessor configured to choose intra-frames of the sequence of frames,and a second processor configured to sample DC components of the chosenintra-frames to produce a set of test fingerprints. In an embodiment, athird processor is configured to compare the set of test fingerprintsagainst a reference set of fingerprints to authenticate the sequence offrames. The third processor can be further configured to identify a setof nearest neighbor fingerprints in the reference set of fingerprints toauthenticate the sequence of frames. In an embodiment, the firstprocessor is further configured to determine spacings of the chosenintra-frames, and the third processor is configured to employ thespacings to select candidate fingerprints in the reference set offingerprints to authenticate the sequence of frames. The spacings can betime stamps. In an embodiment, the second processor employs the spacingsto select the candidate fingerprints in the reference set offingerprints by identifying members of the reference set of fingerprintshaving spacings that match spacings of the set of test fingerprints. Inan embodiment, choosing the intra-frames of the sequence of framesincludes randomly choosing the intra-frames. In an embodiment, producingthe set of fingerprints includes projecting the DC components onto asubspace. In an embodiment, the projecting the DC components includesmultiplying the set of test fingerprints by a projection matrix, whereinthe projection matrix is formed of eigenvectors associated with largereigenvalues of a covariance matrix for a candidate sequence of frames.

An embodiment provides a method to authenticate a sequence of frames bychoosing intra-frames of the sequence of frames and samplingzero-frequency (“DC”) components of the chosen intra-frames to produce aset of test fingerprints. In an embodiment, the method further includescomparing the set of test fingerprints against a reference set offingerprints correspondingly produced to authenticate the sequence offrames. In an embodiment, the method further includes identifying a setof nearest neighbor fingerprints in the reference set of fingerprints toauthenticate the sequence of frames. In an embodiment, the methodfurther includes determining spacings of the chosen intra-frames; andemploying the spacings to select candidate frames in the reference setof fingerprints to authenticate the sequence of frames. In anembodiment, the spacings are time stamps. In an embodiment, comparingthe set of test fingerprints against the reference set of fingerprintsincludes identifying members of the reference set of fingerprints havingspacings that match spacings of the set of test fingerprints, andcomparing fingerprints in the set of test fingerprints with fingerprintsof the identified members to authenticate the sequence of frames. In anembodiment, choosing the intra-frames of the sequence of frames includesrandomly choosing the intra-frames. In an embodiment, the method furtherincludes scaling the sampled DC components to a lower dimension. In anembodiment, the method further includes projecting the DC components ofthe chosen intra-frames onto a subspace to produce the set of testfingerprints. In an embodiment, projecting the DC components includesmultiplying the DC components of the chosen intra-frames by a projectionmatrix, and the projection matrix is formed of eigenvectors associatedwith larger eigenvalues of a covariance matrix for a library of frames.In an embodiment, the sequence of frames is a sequence of video frames.

While this invention has been described with reference to illustrativeembodiments, this description is not intended to be construed in alimiting sense. Various modifications and combinations of theillustrative embodiments, as well as other embodiments of the invention,will be apparent to persons skilled in the art upon reference to thedescription. It is therefore intended that the appended claims encompassany such modifications or embodiments.

We claim:
 1. A method of authenticating a sequence of frames,comprising: choosing one or more intra-frames from a sequence of frames;sampling a near zero-frequency (“DC”) component of the chosen one ormore intra-frames; and projecting the near DC components of the chosenone or more intra-frames onto a subspace to produce a set of one or moretest fingerprints.
 2. The method as recited in claim 1 furthercomprising comparing the set of one or more test fingerprints against areference set of one or more fingerprints correspondingly produced toauthenticate the sequence of frames.
 3. The method as recited in claim 1further comprising identifying a set of one or more nearest neighborfingerprints in the reference set of one or more fingerprints toauthenticate the sequence of frames.
 4. The method as recited in claim 1further comprising: determining spacings of the chosen one or moreintra-frames; and employing the spacings to select candidate frames inthe reference set of one or more fingerprints to authenticate thesequence of frames.
 5. The method as recited in claim 4 wherein thespacings are time stamps.
 6. The method as recited in claim 4 whereinthe comparing the set of one or more test fingerprints against thereference set of one or more fingerprints comprises: identifying membersof the reference set of one or more fingerprints having spacings thatmatch spacings of the set of one or more test fingerprints; andcomparing fingerprints in the set of one or more test fingerprints withfingerprints of the identified members to authenticate the sequence offrames.
 7. The method as recited in claim 1 wherein the choosing the oneor more intra-frames of the sequence of frames comprises randomlychoosing the one or more intra-frames.
 8. The method as recited in claim1 further comprising scaling the sampled near DC components to a lowerdimension.
 9. The method as recited in claim 1 wherein the projectingthe near DC components comprises multiplying the near DC components ofthe chosen one or more intra-frames by a projection matrix, and whereinthe projection matrix is formed of eigenvectors associated with largereigenvalues of a covariance matrix for a library of frames.
 10. Themethod as recited in claim 1 wherein the sequence of frames is asequence of video frames.
 11. An apparatus to authenticate a sequence offrames, comprising: a first processor configured to choose intra-framesof the sequence of frames; and a second processor configured to sampleDC components of the chosen intra-frames and project the DC componentsonto a subspace to produce a set of test fingerprints.
 12. The apparatusas recited in claim 11, further comprising a third processor configuredto compare the set of test fingerprints against a reference set offingerprints to authenticate the sequence of frames.
 13. The apparatusas recited in claim 12, wherein the third processor is furtherconfigured to identify a set of nearest neighbor fingerprints in thereference set of fingerprints to authenticate the sequence of frames.14. The apparatus as recited in claim 12, wherein the first processor isfurther configured to determine spacings of the chosen intra-frames, andwherein the third processor employs the spacings to select candidatefingerprints in the reference set of fingerprints to authenticate thesequence of frames.
 15. The apparatus as recited in claim 14, whereinthe spacings are time stamps.
 16. The apparatus as recited in claim 14,wherein the second processor employs the spacings to select thecandidate fingerprints in the reference set of fingerprints byidentifying members of the reference set of fingerprints having spacingsthat match spacings of the set of test fingerprints.
 17. The apparatusas recited in claim 11, wherein the choosing intra-frames of thesequence of frames comprises randomly choosing the intra-frames.
 18. Theapparatus as recited in claim 11, wherein the projecting the DCcomponents comprises multiplying the set of test fingerprints by aprojection matrix, and wherein the projection matrix is formed ofeigenvectors associated with larger eigenvalues of a covariance matrixfor a candidate sequence of frames.
 19. The apparatus as recited inclaim 11, wherein the second processor is further configured to scalethe sampled near DC components to a lower dimension.
 20. The apparatusas recited in claim 11, wherein the sequence of frames is a sequence ofvideo frames.
 21. The apparatus as recited in claim 11, wherein thefirst processor and the second processor are a same processor.
 22. Theapparatus as recited in claim 12, wherein the first processor, thesecond processor and the third processor are a same processor.